﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Furiant.Figment.Items.Lootable;

namespace Furiant.Figment.Agents.Inventory
{
    public class InventoryUnequipTrap : IInventoryUnequipTrap
    {
        #region Fields

        private readonly HashSet<IEquippable> _collection;

        #endregion

        #region Constructors

        public InventoryUnequipTrap()
        {
            _collection = new HashSet<IEquippable>();
        }

        #endregion

        #region Properties

        public int Count { get { return _collection.Count; } }

        #endregion

        #region Methods

        public void Add(IEquippable item)
        {
            _collection.Add(item);
        }

        public bool Remove(IEquippable item)
        {
            return _collection.Remove(item);
        }

        public IEnumerator<IEquippable> GetEnumerator()
        {
            return _collection.GetEnumerator();
        }

        IEnumerator IEnumerable.GetEnumerator()
        {
            return GetEnumerator();
        }

        #endregion
    }
}
